﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using IRCBot.Messages;

namespace IRCBot.Modules
{
    public delegate void ModuleEvent();
    public delegate void SendDataEvent(OutgoingMessage message);
    public delegate void SayEvent(string message, string channel);
    public delegate void DelayedSayEvent(string message, string channel, DateTime whenToSay);

    public interface IModule
    {
        event SendDataEvent SendData;
        event SayEvent Say;
        event DelayedSayEvent DelayedSay;
        event ModuleEvent ClearDelayedMessages;

        void HandleIncomingMessage(IncomingMessage message);
    }
}
